numpy 创建矩阵常用方法
arange+reshape
in:
1 2
| n = np.arange(0, 30, 2)# start at 0 count up by 2, stop before 30 n = n.reshape(3, 5) # reshape array to be 3x5
|
out:
linspace+resize
in:
1 2
| o = np.linspace(0, 4, 9) o.resize(3, 3)
|
out:
ones zeros eye diag random.randint 等创建矩阵
in:
1 2 3 4 5 6
| np.ones((3, 2)) np.zeros((2, 3)) np.eye(3)#3维单位矩阵 y = np.array([4, 5, 6]) np.diag(y)#以y为主对角线创建矩阵 np.random.randint(0, 10, (4,3))
|
out:
ones:
[[1. 1.][1. 1.]
[1. 1.]]
zeros:
[[0. 0. 0.][0. 0. 0.]]
eye:
[[1. 0. 0.][0. 1. 0.]
[0. 0. 1.]]
diag:
[[4 0 0][0 5 0]
[0 0 6]]
randint
[[1 3 5][4 4 3]
[9 3 0][7 0 0]]
矩阵拼接
in:
1 2 3
| p = np.ones([2, 3], int) np.hstack([p, 2*p])#水平拼接 np.vstack([p, 2*p])#竖直拼接
|
out:
hstack:
[[1 1 1 2 2 2][1 1 1 2 2 2]]
vstack:
[[1 1 1][1 1 1]
[2 2 2][2 2 2]]